package io.github.wppli.infrastructure.persistent.dao;

import io.github.wppli.infrastructure.persistent.po.UserFollows;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 用户关注关系 Mapper 接口
 * </p>
 *
 * @author lijiaqiang@ljq1024.cc
 * @since 2025-03-02
 */
@Mapper
public interface IUserFollowsDao extends BaseMapper<UserFollows> {
    void deleteFollow(@Param("userId")Long userId, @Param("unFollowedUserId")Long unFollowedUserId);

    void updateUserFollowStatusNormal(@Param("userId")Long userId, @Param("targetId")Long targetId);

    void updateUserFollowStatusDelete(@Param("userId")Long userId, @Param("targetId")Long targetId);

    UserFollows selectUserFollowStatus(@Param("userId")Long userId, @Param("targetId")Long targetId);

    List<String> queryUserFolloweeList(@Param("userId")Long userId);
}
